Sound reasoning about unchecked exceptions: soundness proof
نویسندگان
چکیده
In this note we formalize a multithreaded Java-like programming language with unchecked exceptions, try-catch blocks, and synchronized blocks, as well as method contracts, object invariants, block invariants, thread-local objects, and parallel execution statements. We further formalize our verification condition generation-based modular static verification approach that verifies that the program complies with its method contracts even in the presence of unchecked exceptions, and prove its soundness. Sound reasoning about unchecked exceptions: Soundness proof Bart Jacobs Peter Müller Frank Piessens
منابع مشابه
A Syntactic Approach to Type Soundness
We present a new approach to proving type soundness for Hindley/Milner-style polymorphic type systems. The keys to our approach are (1) an adaptation of subject reduction theorems from combinatory logic to programming languages, and (2) the use of rewriting techniques for the speciication of the language semantics. The approach easily extends from polymorphic functional languages to imperative ...
متن کاملUnderstanding Exceptional Behavior and Exception Flow in Implicit Invocation Systems by Mehdi Bagherzadeh, Hridesh Rajan and Ali Darvish
Exceptions and their implicit control flow complicate modular understanding (reasoning) of both exceptional behavior and exception flow of a system. Such reasoning tasks about exceptions are more complicated in implicit invocation (II) systems, where a subject module can invoke other observer modules without knowing about them and especially behavior and flow of their exceptions. In this work, ...
متن کاملUnchecked Exceptions Can Be Strictly More Powerful Than Call/CC
We demonstrate that in the context of statically-typed purely-functional lambda calculi without recursion, unchecked exceptions (e.g., SML exceptions) can be strictly more powerful than call/cc. More precisely, we prove that a natural extension of the simply-typed lambda calculus with unchecked exceptions is strictly more powerful than all known sound extensions of Girard’s Fω (a superset of th...
متن کاملA Formalization of Assumptions and Guarantees for Compositional Noninterference
Research in information-flow security aims at developing methods to identify undesired information leaks within programs from private (high) sources to public (low) sinks. For a concurrent system, it is desirable to have compositional analysis methods that allow for analyzing each thread independently and that nevertheless guarantee that the parallel composition of successfully analyzed threads...
متن کاملMirrorShard: Proof by Computational Reflection with Verified Hints
We describe a method for building composable and extensible verification procedures within the Coq proof assistant. Unlike traditional methods that rely on run-time generation and checking of proofs, we use verified-correct procedures with Coq soundness proofs. Though they are internalized in Coq’s logic, our provers support sound extension by users with hints over new domains, enabling automat...
متن کامل